Automatic update of searches

ABSTRACT

A method and system for automatically updating searches are described. In one embodiment, a first search result may be compared with a second search result to automatically identify at least one data item within the first search result that is changed relative to the second search result. The at least one data item may comprise a transaction term. A notification of the at least one data item may be transmitted to a user device.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/572,493 filed Aug. 10, 2012, which is a continuation of U.S. patentapplication Ser. No. 13/284,717 filed Oct. 28, 2011, which is acontinuation of U.S. patent application Ser. No. 12/751,679 filed Mar.31, 2010, which is a continuation of U.S. application Ser. No.09/539,167, filed Mar. 29, 2000, and claims the benefit of U.S.Provisional Application Ser. No. 60/179,645 filed Feb. 2, 2000, all ofwhich applications are incorporated herein by reference in theirentireties.

TECHNICAL FIELD

The present invention relates to the retrieval of information over anetwork and more particularly to a change detection and notificationsystem.

BACKGROUND

As networks and computers have been able to deliver information faster,users have begun to expect instantaneous information and informationavailable from anywhere in the world. The vast amount of informationavailable has created an overload of information for the user.

Internet search tools and search engines allow users to find informationby searching for keywords throughout an index of millions of documentsposted on websites. However, a problem with the search engines is theinability to receive updated information on specific pages. A user mayfrequently access the information on web pages to see if changes haveoccurred, but this is time consuming. Accessing information is tedious,particularly when information contained in a large database and largesearches must be conducted.

Software tools have been developed to automate the task of detectingupdates to information on web pages and within databases. These toolsallow users to specify keywords which are periodically searched for in anews database. Some of these tools send news articles containing thespecified keywords to the user by electronic mail (e-mail).

These automated software tools are sometimes known as “netbots”, anetwork robot which automatically performs some task for a user. Netbotsallow the users to manage the information within databases and reducethe amount of information that the user must read. Filtering of theinformation is critical to making good use of the overwhelming amount ofinformation available to the user.

Change detection tools allow users to register a document or web page onthe Internet and be notified when any change to that document occurs.The user registers a document by specifying the URL of the document andproviding the user's e-mail address. The change detection tool stores alocal copy of the document together with the user's e-mail address.Periodically (for example daily or weekly), the change detection toolaccess the source document specified by the URL and compares theretrieved source document to the local saved copy of the document. If adifference between the two copies is detected, a message is sent to theuser's e-mail address notifying the user of the change in the document.These document change tools may store an actual copy of the entiredocument on the tools website for comparison. However, such tools areinefficient for retrieving updated information within a database, forexample, an auction site. Because of the large amount of data withinthese sites, a user may be notified too often or with too muchinformation for the updates to be useful. Often the user is notified ofmany insignificant changes and frequent e-mail notices of minorirrelevant changes become irritating to the user. In addition, such URLreminders notify the user only that a change has taken place and do nothighlight the changes or indicate the changes to the user. Thus, theuser must re-read the entire document to determine what has changed.

BRIEF DESCRIPTION OF THE DRAWINGS

Features and advantages will be apparent to one skilled in the art inlight of the following detailed description in which:

FIG. 1 is an illustration of one embodiment for a distributed auctionsite, search updating system;

FIG. 2 is a block diagram of one embodiment of an architecture of acomputer system;

FIG. 3a is a block diagram of one embodiment for a random access memory,such as that shown in FIG. 2;

FIG. 3b is a block diagram of one embodiment of search criteria used inthe system of FIG. 1;

FIG. 4 is a block diagram of one embodiment for an auction site, searchupdating system;

FIG. 4b is a block diagram of one embodiment of search results;

FIG. 5 is a flow diagram of one embodiment for automatically updatingauction site searches;

FIG. 6 illustrates an exemplary personal shopper user log-in window;

FIG. 7 illustrates an exemplary saved search results window;

FIG. 8 illustrates an exemplary existing search and modification window;

FIG. 9 illustrates an exemplary search criteria preview and save window;

FIG. 10 illustrates an exemplary search modified verification window;

FIG. 11 illustrates an exemplary window existing search deletion window;

FIG. 12 illustrates art exemplary new search recorded verificationwindow; and

FIGS. 13A and 13B illustrate an exemplary search results window.

DETAILED DESCRIPTION

A method, apparatus, and system for automatically updating searches aredescribed. In one embodiment, a first search result may be compared witha second search result to automatically identify at least one data itemwithin the first search result that is changed relative to the secondsearch result. The at least one data item may comprise a transactionterm. A notification of the at least one data item may be transmitted toa user device.

Reference in the specification to “one embodiment” or “an embodiment”means that a particular feature, structure, or characteristic describedin connection with the embodiment is included in at least one embodimentof the invention. The appearances of the phrase “in one embodiment” invarious places in the specification are not necessarily all referring tothe same embodiment. Although the search update system is described interms of an auction site, the system and method may be used toautomatically update searches of any database.

Some portions of the detailed description that follows are presented interms of algorithms and symbolic representations of operations on databits within a computer memory in the form of a computer program. Such acomputer program may be stored in a computer readable storage medium,such as, but is not limited to, any type of disk including floppy disks,optical disks, CD-ROMs, and magnetic-optical disks, read-only memories(ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic oroptical cards, or any type of media suitable for storing electronicinstructions, and each coupled to a computer system bus.

FIG. 1 is a diagram of one embodiment for a distributed auction site,search updating system 100. Referring to FIG. 1, server 102 is coupledto mass storage device 104. Server 102 and mass storage device 104 arecoupled via wide area network (WAN) 112 to a variety of clients 106 and108. Wide area network 112 may be coupled to any of a variety of clients106 and 108. In one embodiment, mass storage device 104 contains anauction item database, a modified or new item database, a searchcriteria database, and a search results database. In an alternateembodiment, each of the databases may be contained in a separate massstorage devices 104. A user accesses a server through client 106, 108via wide area network 112 in order to enter items for sale in theauction item database, modify items for sale, and enter search criteriafor searching for items within the auction item database. After the userenters all the information into the system 100, server 102 uses thesearch criteria to search for items within the auction item database.The search results are stored in the search results database and theuser is notified that the search is complete. In one embodiment, theuser is notified by an e-mail sent from server 102 via wide area network112 to client 106, 108.

FIG. 2 is a block diagram of one embodiment for an architecture for acomputer system 200. Referring to FIG. 2, CPU 202 is coupled via bus 215to a variety of memory structures and input/output 210. The memorystructures may include, for example, read only memory (ROM) 204, randomaccess memory (RAM) 206, and/or non-volatile memory 208. In oneembodiment, CPU 202 is also coupled via bus 215 to network interface212. Network interface 212 is used to communicate between computersystem 200 and server 102 and a variety of other computer terminals 108.Network interface 212 is coupled to the wide area network 112 by any ofa variety of means such as, for example, a telephone connection viamodem, a DSL line, or the like. The architecture shown in FIG. 2 may beutilized for either client 106, 108, server 102, or both.

FIG. 3a is a block diagram of one embodiment for random access memory(RAM) 206. Referring to FIG. 3a , RAM 206 contains auction itemapplication 302, search criteria application 304, search engine 312, andchange-detection manager 310. Change-detection manager 310 includesupdate responder 306 and update detector 308. Auction item application302 is used to add or modify items to the item database. Auction itemapplication 302 interacts with the user via a graphical user interface(GUI) to set up items for sale. Search criteria application 304 is usedto add, modify and delete search criteria for searching the itemdatabase. Search criteria application 304 interacts with the user via aGUI to set up criteria for searching the item database. Search engine312 searches the item database using the search criteria entered throughsearch criteria application 304. Update responder 306 handlescommunication between server 102 and the search engine software. Updatedetector 308 is responsible for performing the automatic update of thesearches. In one embodiment, change-detection manager 310 is the NetMindChange-Detection tool provided by NetMind Services, Inc. of Campbell,Calif.

FIG. 3b is a block diagram for one embodiment of search criteria 320used in system 100. Referring to FIG. 3b , search criteria 320 mayinclude a unique search ID 322, a user identification 324, user e-mailaddress 326, category indicator 328, search string 330, search frequency332, minimum bidding price 334, maximum bidding price 336, searchincludes description 338, order of the search results 340, searchstarting date 342, and search ending date 344. The entries in searchcriteria 320 are entered through a GUI.

Search ID 322 is a unique identifier for the search criteria 320. In oneembodiment, search ID 322 is automatically generated by system 100 whenthe search is saved. User ID 324 is a unique identifier for the user andis entered by the user when the user signs-up for the notificationservice. User e-mail address 326 is used to notify the user of theresults of the updated search results. Category search 328 indicates theauction site category for the search. In one embodiment, the user maysearch items for sale based upon the item category (for example, autos,boats, or the like). Search string 320 contains the search data enteredby the user for the search (for example, “BMW 3225i”). Search frequency332 indicates how often a search update is performed. For example,search frequency 332 may indicate a daily, weekly, or monthly update.Minimum bidding price 334 contains the lowest bid price entered by theuser for the item and maximum bidding price 336 contains the highest bidprice entered by the user. Search includes description 338 is a tag thatindicates whether the search is to be performed on the description ofthe item in addition to the title of the item. Order of search results340 indicates whether the search results are displayed newest first oroldest first. Search starting date 342 indicates the date from which thesearch updates are performed. In one embodiment, search starting date342 is automatically inserted by the system when the user saves thesearch information. Search ending date 344 indicates the date at whichthe search updates are to be concluded.

FIG. 4 is a block diagram of one embodiment of an auction site, searchupdating system 400. Referring to FIG. 4, items processor 405 accessesitem database 410 to add items to item database 410. Items are enteredby a user through a GUI. Items processor 405 extracts new or modifieditems from item database 410 and places the extracted items in modifiedor new items database 415. The extraction of modified or new items isperformed on a regular basis. For example, the extraction may be run onan hourly or nightly basis.

Search criteria input processor 425 downloads search criteria 320 intosearch criteria database 420. Search criteria 320 is input into thesystem 400 by the user through a GUI. In one embodiment, the user isqueried at the time a search is initially entered into the systemwhether the user wishes to save the search for future updates. If theuser does not wish to save the search, the search is performed on theitem database 410 and the results displayed to the user. However, if theuser wishes to save the search, search criteria input processor 425performs an initial search against auction item database 410 anddisplays the search results on the user's terminal. In addition, searchcriteria input processor 425 saves search criteria 320 entered by theuser in search criteria database 420.

Update notification engine 430 uses search criteria 320 from searchcriteria database 420 to search the modified or new items database 415to create search results. The search results are stored in search resultdatabase 440. Update notification engine 430 compares search results ona periodic basis. The periodic basis is determined by search frequency332. Thus, search criteria 320 may indicate that the search is performedand the comparison made on an hourly, nightly, or weekly basis. Updatenotification engine 430 runs the current search and compares the searchresults for the current search with search results from a prior runstored in search results database 440.

Update notification engine 430 retrieves search criteria 320 from searchcriteria database 420. Search criteria 320 is used to search themodified or new items database 415 and the results are transferred toupdate manager 310. Update detector 308 parses the new search results.In one embodiment, the search results are sorted in date order with thelatest date first. Update detector 308 retrieves the previously storedsearch results from search result database 440 to make the comparison.In one embodiment, each auction item extracted from new or modifieditems database 415 is tagged with a beginning and ending tag. During theparsing, each result is divided into sections based upon the tags andthe new search results are parsed and divided depending on the tags. Inone embodiment, each tag section is then processed by a CRC generator tochecksum each section. After all sections of the search results havebeen checksummed, the archived checksummed sections in search resultdatabase 440 for the corresponding search are compared to the currentchecksummed sections. If a match is found, then a section has notchanged. However, if no match is found, then that particular auctionitem has changed. The changed items are saved in mail notification 435.After all comparisons have been made, the newest checksummed searchresults are saved in search result database 440 replacing the previoussearch results for the particular search.

FIG. 4b is a block diagram of one embodiment of the search results 450.Each search result 450 contains a search ID 452 and a number of searchresult entries 454. Each search result entry 454 contains an item tag456, checksum entry 458, and change tag 460. Search ID 452 correspondsto search ID 332. Item tags 456 are unique identification tags to eachindividual auction item contained within database 410. Checksums 458 arethe checksum values generated by update detector 308 and change tags 460are temporary data areas used by update detector 308 to determine if achange has occurred. In one embodiment, the change codes are initializedto 11 before processing. Any entries 454 whose change code remains 11 atthe end of processing are new sections or changed sections. Change tags460 keep track of type of change found. A change code is written intothe change tags 460 for each entry 454 when a match is found or notfound. In one embodiment, when a match is found, change tag 460 is setto 00 indicating that no change occurred in this section. After allarchived sections in search result 450 have been compared, if all changetags 460 are 00, then no new sections or changes were found. However,entries 454 with change tags 460 other than 00 indicate that a changehas occurred.

The results of the comparison are sent to the user via e-mailnotification 435. In one embodiment, the notification is by an e-mailmessage sent from server 102 to client 106, 108. In alternateembodiments, any applicable notification system may be utilized such as,for example, notification by web page, by facsimile, or by pager. In oneembodiment, the e-mail message contains the changed auction itemsretrieved from auction item database 410 or new and modified itemdatabase 415. In one embodiment, an e-mail notification is sent for eachitem that has been found to have changed. In an alternate embodiment, asingle e-mail notification 435 will be sent out for each searchcriteria. E-mail may include not only the item found to have been new orchanged, but also the unique search ID 322, user ID 324, the categorybased on the category searched 328, the search from search string 330,the frequency 332, minimum or maximum bidding prices 334, 336, whetherthe search included the description 338, the starting date 342, andending date 344. In alternate embodiments, additional information may bealso sent in the e-mail notification 435.

In one embodiment, update notification engine 430 retrieves searchesfrom modified or new items database 415 on a daily basis. Updatenotification engine 430 executes the searches for each user for eachsearch. In one embodiment, a user may save up to three searches at anyone time. In alternate embodiments, any number of searches may be saved.A search may be active or inactive depending on search criteria 320.Whether a search is active for a particular execution is dependent uponthe duration of a search and frequency 332 entered by the user. Ifupdate notification engine 430 finds a match for the search and thecomparison shows that a change has occurred from a prior search, theresults are sent to the user. In one embodiment, each search result issent in a separate e-mail notification 435. If a search is not found orthere has been no update since the prior search, update notificationengine 430 sends notification message 435 to the user indicating that nomatch was found. In one embodiment, an e-mail notification 435 is sentonly after a specific period of time to indicate that no matches havebeen found. For example, in one embodiment, if update notificationengine 430 does not find an updated match for a week, a “still looking”message is sent to the user.

Update notification engine 430 also sends a notification 435 to the userthat a search will expire. In one embodiment, the update notificationengine 430 sends the expiration notice to the user 24 hours prior to theexpiration of the search.

FIG. 5 is a flow diagram of one embodiment for automatically updatingauction site 100 searches. Initially at processing block 505, new andmodified items for sale are extracted from item database 410 and placedinto modified or new items database 415. In one embodiment, theextraction is performed on a periodic basis, for example, hourly ornightly. In addition, search criteria 320 are extracted from searchcriteria database 420. In one embodiment, search criteria 320 areextracted for each user and each user may have up to three searchcriteria.

At processing block 510, modified or new items database 415 is searchedusing the extracted search criteria 320 from search criteria database420. Search results are saved in search results database 440. Any knownsearching method may be used to search the database.

At processing block 515, the search results for the new search arecompared to the search results from a previous search. If any items havechanged or are new, the particular items are tagged. Update notificationengine 430 uses search criteria 320 from search criteria database 420 tosearch the modified or new items database 415 to create search results.The search results are stored in search result database 440. Updatenotification engine 430 compares search results on a periodic basis. Theperiodic basis is determined by search frequency 332. Thus, searchcriteria 320 may indicate that the search is performed and thecomparison made on an hourly, nightly, or weekly basis. Updatenotification engine 430 runs the current search and compares the searchresults for the current search with search results from a prior runstored in search results database 440.

At processing block 520, the results of a comparison are sent to theuser by e-mail notification. The results of the comparison are sent tothe user via e-mail notification 435. In one embodiment, thenotification is by an e-mail message sent from server 102 to client 106,108. In alternate embodiments, any applicable notification system may beutilized. In one embodiment, the e-mail message contains the changedauction items retrieved from auction item database 410 or new andmodified item database 415. In one embodiment, an e-mail notification issent for each item that has been found to have changed. In an alternateembodiment, a single e-mail notification 435 will be sent out for eachsearch criteria. E-mail may include not only the item found to have beennew or changed, but also the unique search ID 322, user ID 324, thecategory based on the category searched 328, the search from searchstring 330, the frequency 332, minimum or maximum bidding prices 334,336, whether the search included the description 338, the starting date342, and ending date 344. In alternate embodiments, additionalinformation may be also sent in the e-mail notification 435. Inalternate embodiments, any appropriate notification method may be used.

FIG. 6 illustrates an exemplary personal shopper user log-in window 600.Referring to FIG. 6, log-in window 600 includes user ID input area 602,password input area 604, and a remember me check box 610. In oneembodiment, when a user signs onto the auction site and enters thesearch area, the user is presented with the user log-in screen 600. Inan alternate embodiment, log-in window 600 may be displayed when a userenters a search string in any window in system 100. The user has theoption of performing a one time search by entering a search criteria orsearch string in search string input area 606 and by checking the searchtitles and description check box 608. In one embodiment, the user mayalso create a personal shopper log-in by entering or creating a user IDand password in the appropriate areas 602, 604. The user may only savesearch criteria by creating a personal shopper log-in account.

FIG. 7 illustrates an exemplary saved search results window 700. Savedsearch results window 700 includes search string input area 702, searchtitles and description checkbox 704, and saved searches 706. In oneembodiment, a user is allowed to save up to three searches at any giventime. In an alternate embodiment, the user may save any number ofsearches. Saved search results 706 include the name of the search andthe search status (that is, whether the search is active and the date atwhich it will end). In addition, saved searches 706 include save searchactions 708 that the user may perform on the saved searches 706. Forexample, the user may search using the saved search, modify the savedsearch or delete the saved search.

FIG. 8 illustrates an exemplary existing search and modification window800. Referring to FIG. 8, window 800 includes search modification dialogbox 802. Search modification dialog box 802 includes search string inputarea 804, search item title or search item title and description checkboxes 806, minimum price range input area 808, maximum price input area810, notification frequency input area 812, and e-mail notificationduration input area 814. In addition, window 800 includes a previewbutton 816 for previewing the search and an undo button 818 for undoingthe input into dialog box 802. Dialog box 802 may be used formodification of existing searches or for the input of new searches.Information entered into dialog box 802 is saved in search criteria 320.

FIG. 9 illustrates an exemplary search criteria preview and save window900. Referring to FIG. 9, search criteria 320 entered by the user withindialog box 802 is displayed in search criteria area 902. Window 900 alsoincludes save button 904 for saving the search results into searchcriteria 320 and search results received from a search of database 415in search results area 906. In one embodiment, the search results shownin search results area 906 show the first four items of items found indatabase 410. In an alternate embodiment, any number of search resultsmay be shown in area 906.

Once the user saves the search by pressing save button 904, theinformation entered in dialog box 802 is saved in search criteria 320.The unique search ID 322 is generated for the search and the useridentification (entered through user log-in window 600) is saved in userID 324. User identification may be a combination of the user name anduser password entered in log-in window of FIG. 6. Information entered ininput area 804 is saved in search string 330. If a category had beenchosen for the search, the category name will be placed in categorysearch 328, the price range is placed in the minimum bidding and maximumbidding price 334 and 336, the frequency is entered into searchfrequency 332, an indication whether the search includes a descriptionfrom 806 is placed into 338, and the starting date 342 and ending date344 is generated from the e-mail duration. In one embodiment, startingdate 342 is the date the search is entered or modified and ending date344 is generated based upon the duration and starting date 342.

FIG. 10 illustrates an exemplary search modified verification window1000. Referring to FIG. 10, window 1000 includes an add a new searchbutton 1002 and a view existing searches button 1004. After save button904 has been entered, window 1000 is presented to the user forverification of the save operation to either save another search ormodify a saved search.

FIG. 11 illustrates an exemplary window existing search deletion window1100. Referring to FIG. 11, a user may indicate that a search is to bedeleted by entering the delete button in existing search actions area708. After the user clicks or enters the delete action, window 1100 isdisplayed. Window 1100 includes the search to be deleted at 1102 and adelete button 1104. A user may delete the displayed search by clickingon the delete button 1104.

FIG. 12 illustrates an exemplary new search recorded verification window1200. Referring to FIG. 12, verification window 1200 includes an add anew search button 1202 and a view existing search button 1204.Verification window 1200 may be displayed after the user has entered anew search in search dialog blocks 802 or through the search stringinput area 702 of any of the display screens of system 100.

FIGS. 13A and 13B illustrate an exemplary search results window.Referring to FIGS. 13A and 13B, the search results window is displayedwhenever the user searches on an existing search or enters a searchstring in a search string input area 702. The search results windowincludes search string input area 1304, e-mail notification and updateaccess area 1306, and other search criteria information 1308. Inaddition, the search results window includes search results area 1310.Items found based upon the search are displayed in search result area1310. In one embodiment, the items are displayed beginning with thenewest item through the oldest item found. The newest item is based uponthe date the item was entered into the auction site or the date that theitem was last updated. By clicking on e-mail notification access area1306, the user may enter the input of saving searches. If the user haspreviously signed on, the clicking on 1306 will take the user to thesearch modification or input window 800 or if the user has not signedon, log-in window 600 will be displayed. By clicking on the e-mailnotification access 1306, the search results displayed in search resultarea 1310 are saved in search results database 440. Each item in thesearch result area 1310 is tagged and a checksum (by the method asdescribed above) is created for the item. The item number and checksumare saved in database 450.

The specific arrangements and methods herein are merely illustrative ofthe principles of this invention. Numerous modifications in form anddetail may be made by those skilled in the art without departing fromthe true spirit and scope of the invention.

What is claimed is:
 1. A method comprising: identifying a data item thatis changed within a first search result relative to a second searchresult, the data item being absent from the second search result andcorresponding to a listed item, the identifying of the data item beingperformed by a processor of a machine; and communicating a notificationof the data item to a user device.
 2. The method of claim 1, furthercomprising: comparing the first search result with the second searchresult, wherein the identifying of the data item is based on thecomparison.
 3. The method of claim 2, wherein the comparing the firstsearch result with the second search result includes parsing the firstsearch result and performing a checksum on the parsed first searchresult.
 4. The method of claim 2, wherein comparing the first searchresult with the second search result includes tagging the data item asbeing absent from the second search result.
 5. The method of claim 4,wherein the communicating of the notification includes transmitting thedata item tagged as being the listed item.
 6. The method of claim 1,further comprising: receiving search criteria from the user device;performing the current search based on the search criteria received fromthe user device; and retrieving the current search result in response tothe performing of the current search.
 7. The method of claim 1, furthercomprising: retrieving the second search result from a search resultsdatabase, and wherein the retrieving is performed periodically accordingto a pre-defined frequency.
 8. The method of claim 1, wherein thecommunicating of the notification includes sending an email notificationof the data item to an email address hosted by an email server, theemail notification being retrievable from the email server by the userdevice, the email notification indicating the change relative to thesecond search result.
 9. The method of claim 1, further comprising:detecting a further data item within the first search result that is thesame as the second search result; and communicating a message notifyingthat that the further data item within the first search result is thesame as the second search result.
 10. A system comprising: a processorconfigured by an update notification engine to identify a data item thatis changed within a first search result relative to a second searchresult, the data item being absent from the second search result andcorresponding to a listed item; and a notification module configured tocommunicate a notification of the data item to a user device.
 11. Thesystem of claim 10, wherein the update notification engine is furtherconfigured to: compare the first search result with the second searchresult; and identify the data item within the first search result basedon the comparison.
 12. The system of claim 11, wherein the updatenotification engine is further configured to: parse the first searchresult and perform a checksum on the parsed first search result.
 13. Thesystem of claim 11, wherein the update notification engine is furtherconfigured to tag the data item as being absent from the second searchresult.
 14. The system of claim 13, wherein the notification module isfurther configured to transmit the data item tagged as being the listeditem.
 15. The system of claim 10, wherein the update notification engineis further configured to: receive search criteria from the user device;and perform a current search based on the search criteria from the userdevice; and retrieve the first search result in response to theperforming of the current search.
 16. The system of claim 10, whereinthe update notification engine is further configured to: retrieve thesecond search result from a search results database, and wherein theretrieving is performed periodically according to a pre-definedfrequency.
 17. The system of claim 10, wherein the notification moduleis further configured to send an email notification of the data item toan email address hosted by an email server, the email notification beingretrievable from the email server by the user device, the emailnotification indicating the change relative to the second search result.18. The system of claim 10, wherein the update notification engine isfurther configured to detect that a further data item within a firstsearch result that is the same as the second search result, and whereinthe notification module is further configured to communicate a messagenotifying that the further data item within the first search result isthe same as the second search result.
 19. A non-transitorymachine-readable medium storing instructions that, when executed by oneor more processors of a machine, cause the machine to perform operationscomprising: identifying a data item that is changed within a firstsearch result relative to a second search result, the data item beingabsent from the second search result and corresponding to a listed item;and communicating a notification of the data item to a user device.